// preload.js
const { contextBridge, ipcRenderer } = require('electron');

//// 在 Electron 中，为了安全，通常会在预加载脚本中暴露有限的 API
// 主进程 <-> 预加载脚本 <-> 渲染进程（前端）
//就好像App.vue中调用的window.electronAPI.setConf()，其实是调用的这里暴露的API

contextBridge.exposeInMainWorld('electronAPI', {
    moveDock: (pos) => ipcRenderer.invoke('move-dock', pos),
    getConf: (k) => ipcRenderer.invoke('get-conf', k),
    setConf: (k, v) => ipcRenderer.invoke('set-conf', k, v),
    showPreview: (bounds, img) => ipcRenderer.invoke('show-preview', bounds, img),
    hidePreview: () => ipcRenderer.invoke('hide-preview')
  });